package com.tedu._04mybatis.mapper;

import com.tedu._04mybatis.pojo.Weibo;
import com.tedu._04mybatis.pojo.WeiboVO1;
import com.tedu._04mybatis.pojo.WeiboVO2;
import com.tedu._04mybatis.pojo.WeiboVO3;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface WeiboMapper {
//    @Insert("INSERT INTO weibo(content,created,user_id) VALUES(#{content},#{created},#{userId})")
    int insert(Weibo weibo);

//    @Delete("DELETE FROM weibo WHERE id=#{id}")
    int deleteById(Integer id);

//    @Update("UPDATE weibo SET content=#{content},created=#{created},user_id=#{userId}")
    int updateById(Weibo weibo);

//    @Select("SELECT id,content,created,user_id userId FROM weibo WHERE id=#{id}")
    Weibo selectById(Integer id);

//    @Select("SELECT id,content,created,user_id userId FROM weibo")
    List<Weibo> selectAll();

//    @Select("SELECT content,created FROM weibo WHERE id=#{id}")
    WeiboVO1 selectWeiboVO1ById(Integer id);

//    @Select("SELECT content,created,user_id userId FROM weibo WHERE id=#{id}")
    WeiboVO2 selectWeiboVO2ById(Integer id);

    int updatesomeById(Weibo weibo);

    int dynamicUpdate(Weibo weibo);
    int dynamicDelete(Integer[] ids);

    int countWeibo();

    WeiboVO3 selectWeiboVO3ById(Integer id);

    List<WeiboVO3> selectAllWeiboVO3();
}
